#include <iostream>
#include <cstdio>

using namespace std;

int n;
char a, b, c;

//思路：
//x柱子上有 n 个盘子，需要借助 y 的帮助，转移到 z 上
void dfs(int n, char x, char y, char z)
{
	//递归出口，如果没有盘子了，不转移
	if(n == 0) return;

	//先将x上面的盘子借助z的帮助，转移到y上
	dfs(n - 1, x, z, y);
	//再将x下面的盘子转移到z上
	printf("%c->%d->%c\n", x, n, z);
	//最后将y上面的盘子借助x转移到z上
	dfs(n - 1, y, x, z);
}

int main()
{
	cin >> n >> a >> b >> c;

	dfs(n, a, c, b);

	return 0;
}